"""SegNet 训练配置"""

DATA_CONFIG = {
    'images_dir': 'data/images',
    'masks_dir': 'data/masks',
    'image_size': 256,
    'to_rgb': False,  # SegNet可以直接处理单通道
}

TRAIN_CONFIG = {
    'batch_size': 24,
    'num_epochs': 50,
    'learning_rate': 1.5e-4,
    'weight_decay': 1e-5,
    'num_workers': 8,
    'k_folds': 8,
    'seed': 42,
}

MODEL_CONFIG = {
    'in_channels': 1,
    'out_channels': 1,
}

LOSS_CONFIG = {
    'bce_weight': 1.0,
    'dice_weight': 1.0,
}

OPTIMIZER_CONFIG = {
    'type': 'adam',
}

SCHEDULER_CONFIG = {
    'type': 'cosine',
    'step_size': 30,
    'gamma': 0.1,
    'T_max': 50,
    'eta_min': 1e-6,
}

OTHER_CONFIG = {
    'device': 'cuda' if __import__('torch').cuda.is_available() else 'cpu',
    'save_interval': 10,
    'log_interval': 10,
}
